SetCamTable
透過設置與相關表的連接來設置凸輪表。
語法
KsCommandStatus SetCamTable(
int Index,
McCamTable Table,
double* MasterPositions,
double* SlavePositions,
double* PointParameters
);
參數
Index [in]:凸輪表索引。索引以零為起點;別名將影響此參數。
Table [in]:定義凸輪表。請見 McCamTable 結構。
MasterPositions [out]:凸輪表中儲存主軸位置的陣列。
SlavePositions [out]:凸輪表中儲存從軸位置的陣列。
PointParameters [out]:表點的附加參數,取決於其插補類型。
直線插補:null。
Poly5 插補:有四個點類型,"!=" 表示 "不等於"。
- StopPoint: Vel = 0; Acc = 0;
- VelocityPoint: Vel != 0; Acc = 0;
- AccelerationPoint: Vel = 0; Acc != 0;
- MovePoint: Vel != 0; Acc != 0;
回傳值
返回 KsCommandStatus 結構。
備註
- 更多關於凸輪表的運作方式之資訊請見: 概念解說 > 凸輪。
- 模擬軸可用作主軸。
- 凸輪表的索引為特定供應商的資料類型。
- SetCamTable 允許選擇包含數據的凸輪表以進行凸輪移動,包含:
- 下載凸輪曲線的起點。
- 開始生成凸輪曲線。
- KsCommandStatus 內的
Done
設定後,凸輪表的索引即有效並可在 SetAxisCam 中使用。
範例
BOOL DefineCamTable(INT Index) {
McCamTable Table = { 0 };
Table.MasterAbsolute = MASTER_ABSOLUTE;
Table.SlaveAbsolute = SLAVE_ABSOLUTE;
Table.Periodic = PERIODIC;
Table.InterpolationType = INTERPOLATION_TYPE;
Table.Length = TABLE_LENGTH;
double MasterPositions[TABLE_LENGTH] = MASTER_POSITIONS;
double SlavePositions[TABLE_LENGTH] = SLAVE_POSITIONS;
double PointParameters[TABLE_LENGTH] = POINT_PARAMETERS;
KsCommandStatus cam = WaitForCommand(5, FALSE, SetCamTable(Index, Table,
MasterPositions, SlavePositions, PointParameters));
return TRUE;
}
使用需求
RT | Win32 | |
---|---|---|
最低支援版本 | 4.0 | 4.0 |
標頭檔 | ksmotion.h | ksmotion.h |
程式庫 | KsApi_Rtss.lib | KsApi.lib |
參見